;(function($) {
$.getDom2Xml = function(option) {

	var node = option;

	var DOM_ELEMENT_NODE = 1;
	var DOM_ATTRIBUTE_NODE = 2;
	var DOM_TEXT_NODE = 3;
	var DOM_CDATA_SECTION_NODE = 4;
	var DOM_DOCUMENT_NODE = 9;
	var DOM_DOCUMENT_FRAGMENT_NODE = 11;

	var ret = '';
	if (node.nodeType == DOM_TEXT_NODE) {
		ret += node.nodeValue.replace(/&/g, '&').replace(/</g, '<;').replace(/>/g, '>');

	} else if (node.nodeType == DOM_ELEMENT_NODE) {
		ret += '<' + node.nodeName.toLowerCase();
		for (var i = 0; i < node.attributes.length; ++i) {
			var a = node.attributes[i];
			if (a && a.nodeName && a.nodeValue && a.nodeName!='contentEditable' ) {
				ret += ' ' + a.nodeName.toLowerCase();
				ret += '="' + a.nodeValue.replace(/&/g, '&').replace(/</g, '<;').replace(/>/g, '>').replace(/\"/g, '"') + '"';
			}
		}

		if (node.childNodes.length == 0) {
			ret += '/>';

		} else {
			ret += '>';
			for (var i = 0; i < node.childNodes.length; ++i) {
			ret += arguments.callee(node.childNodes[i]);
		}
			ret += '</' + node.nodeName.toLowerCase() + '>';
		}

	} else if (node.nodeType == DOM_DOCUMENT_NODE ||
		node.nodeType == DOM_DOCUMENT_FRAGMENT_NODE) {
		for (var i = 0; i < node.childNodes.length; ++i) {
			ret += arguments.callee(node.childNodes[i]);
		}
	}

	return ret;

};
})(jQuery);
